RootTools, 是时候收手了
特别声明
本文系作者何晓杰于2019年4月10日发表的随笔,开源社经过本人同意予以转载。
作者:何晓杰 | 编辑:Corrie
作为一个开发、维护了 8 年的项目,RootTools 今天也许已经走到了尽头,作为它的主力开发者,我很高兴能在今天为它画上一个句号。
2011 年 11 月 18 日,第一次提交 RootTools 代码到 Github,当时我还在盛大创新院。
和 RootTools 一路走来
这一路走来,换过不少次工作,唯有它一直陪伴我至今,有事没事我都会为它写上几行代码,甚至大规模重构一下。完全取决于我闲着或忙着,又或是有新的感悟。但是不论如何,都没有停下来过,也曾经一度被人嘲笑说 “你就靠这一个项目天天贴瓷砖” ,同样的不论如何,这样很爽。
其实当时的想法也很简单,一是觉得安卓不好用,当时我整天刷机,刷得全公司都知道我的大名,甚至同事放在桌上的手机一不注意我就拿去刷了。二是当年 Root 成风,总想借着 Root 的权限去做点什么好玩的事情,而且的确 Root 之后就像打开了通往天堂的大门,很少会有不能玩的事情了。
在整个过程中,也算是经历过了各种麻烦,比如 Android 版本升级,老代码不再正常工作了(在 Root 环境下这种事情更常见,因为大量使用了私有 API,随时可能被改一波)。其次的问题是大众的审美在不断升级,过一阵子就会觉得软件界面很丑,必须得改改,然而我并非 UI 或美术专业,也走了很多很多弯路,也许到今天为止,UI 上依然会入不了你们的法眼吧,但是我尽力了。
最后就是软件功能的升级了,一开始的 RootTools 只是一个终端模拟器,是的,就是从那个开源的 Terminal Emulator 改过来的,主要是方便自己输入一些代码,唯一比 Terminal Emulator 多做的一步是我在启动时直接 su了。随着发现越来越多的问题, RootTools 的功能也越来越多,比如说国内的手机大多阉割 Google 服务,而 RootTools 可以直接予以安装(其中还有版本判断的大量工作,大家也都碰到过装上 Google 服务却不断 FC 的场景吧),又比如说更换字体的功能。这一切的一切都让 RootTools 变得无比的庞大而且难以维护。
另外,我在 RootTools 上所引入的一些操作方式,比如说如何让开源可以赚钱,这一操作模式也被国内领先的增长官范冰(@XDash)所认可,在其于 2015 年 9 月出版的《增长黑客》中被报道,算是一个比较大的个人成就吧。
明确方向——与广告作斗争
2016 年 9 月 8 日,时隔将近 5 年,我曾经在 《Android 群英传》 公众号发布过一篇文章,《RootTools·Neo 正式发布》,这是在经过深思熟虑后的一系列巨大改动,在那个时候,我又一次找到了 RootTools 应该走的方向,也就是与广告作斗争。
这一方向得到了行业大佬兼死党的李骏(@Soulhacker)的认可,他从 RootTools 诞生之日就给予了大量的支持,同样的也对今日的收手表示了赞同。不得不说,对抗广告是我在 RootTools 上做过的最正确的事没有之一,它带来了大量的用户和捐赠收入。也是可以深刻的感受到,用户的真正痛点,可以带来多大的能量。原本我一直以为这是我的自娱自乐,因为我从来不认为又要 Root 又要 Xposed 的一个软件能有多大的受众,光是看到那一大堆刷机的要求用户就跑了吧。但是当成功启动去广告功能的用户在几周内超过 20 万后,我开始深入的思考到底是什么原因让那些懒散惯了的用户变得如此勤奋。
发展止于时代的进步
现在是 2019 年 4 月 10 日,距离第一次提交代码 2710 天,差不多也是时候让它寿终正寝了。主要的理由嘛,以下几个吧:一是目前的工作非常忙,我已无暇分身,二是现在的 Android 已经很完善了,已经不太有需要 Root 后再去改系统的需求,况且现在的手机被 Root 的情况也已经非常少了,三是广告问题,目前小米已经可以手动关闭广告,需要的只是一点点操作,这个时候也已经无需强行在系统里做什么了。
最后,还是有几个遗憾,一是说好的 iOS 版本一直遥遥无期,虽然的确是写过了一点点代码,但是自从我用上 iPhone6 之后,就没再越过狱了。其次是之前一直有人问我要 “暗黑主题” 的版本,以及希望 so 能支持 arm64 架构,也一直没能完成。也有不少人私下问我,为什么看着经常在改,有提交记录,但是不发布新版本了呢,这个事情就当是我的私心吧,我一心想着你们可以自己编译呢,而且我那台服务器租期到了也没打算续费了。
当然了,写这篇的目的也绝对不是为了感叹一下,更多的是希望通过项目本身,看到不断变化的用户需求,看到时代的进步,当这款产品不再符合时代的需要,也不再有用户需要的时候,就是时候让它淡出我们的视线了。当然在最后还是给大家两个惊吓,一是暗黑主题做好了!二是支持 arm64-v8a 了!感不感动?
这个项目以后会走向哪里?可能会就这样放置着,也可能会在其上做一些新技术研究,用于验证一些技术点,说不定哪天又会有新的想法。一个项目的离去也不代表对开源的放弃,我依然会坚持耕作在各类开源项目上,欢迎观望,更欢迎探讨。
祝贺 SkyWalking 毕业成为 Apache 顶级项目